<?php
namespace Admin\Controller;
use Think\Controller;
/**
 * 后台 用户模块 不需要判断登录
 */
class LoginController extends Controller {
    /**
     * 登陆页面
     * @return [type] [description]
     */
   public function index(){
        $this->display();
   }

    /**
     * 登录  保存session
     * @return [type] [description]
     */
    public function login(){
        $a_name=$this->_param('admin_name','用户名不能为空');
        $a_password=$this->_param('a_password','密码不能为空');
        $admin=M('admin')->where('username="'.$a_name.'"')->find();
        if(empty($admin)){
            $this->_internalError('用户不存在');
        }
        if(encStr($a_password)!=$admin['password']){
            $this->_internalError('用户名或密码错误');
        }
        //被禁用的管理员不能登录
        if($admin['forbid']==1){
            $this->_internalError('该账号已被禁用，请联系管理员');
        }
        $_SESSION['admin_user']=serialize($admin);
        $this->_success('登录成功');
    }
    /**
     * 退出登录
     * @return [type] [description]
     */
    public function logout(){
        unset($_SESSION['admin_user']);
        $this->redirect('Login/index');
    }

    private function _internalError($msg, $data=null) {
        $ret = array(
            'status'=>500,
            'message'=>$msg
        );
        if(!empty($data)) {
            $ret['show_data'] = $data;
        }
        // dump($ret);die;
        die(json_encode($ret));
    }

    private function _success($msg, $data=null,$extra=null) {
        
        $ret = array(
            'status'=>200,
            'message'=>$msg
        );
        $ret['show_data'] = $data;
        foreach ($extra as $k => $v) {
            $ret[$k]=$v;
        }
        die(json_encode($ret));
    }
    private function _param($key, $msg=null) {
        if(empty($_REQUEST[$key]) && $msg) {
            $this->_internalError($msg);
        }
        return $_REQUEST[$key];
    }

    public function createPwd(){
        $pwd=$this->_param('pwd');
        echo encStr($pwd);
    }


}